//Для добавление альтернативного имени, необходимо:
//Создать список расширений для PKCS#10 запроса

Extension[] ext = new Extension[2];
//Для добавления списка альтернативных имен создается вектор
ASN1EncodableVector subjectAltName = new ASN1EncodableVector();
//Добавляются необходимый список альтернативных имен
subjectAltName.add(new GeneralName(GeneralName.directoryName, "C=KZ, O=TEST, CN=test"));
subjectAltName.add(new GeneralName(GeneralName.dNSName, "http://127.0.0.1"));
//Добавляется расширение альтернативного имени
ext[0] = new Extension(Extension.subjectAlternativeName, false, new DEROctetString(new DERSequence(subjectAltName)));
//Конвертирование имени шаблона в BPM строку
String stringCp1251 = new String("c=KZ;o=Template;cn=GOST_RAUTIL_USER_1Y".getBytes(), "Cp1251");
byte[] unicode = stringCp1251.getBytes("Unicode");
byte[] unicodeWithoutBOM = null;
// Определяем Endianess и формируем данные без BOM
try {
    ByteOrder byteOrder = endiannessUtils.getEndianness(unicode);
    if (byteOrder.equals(ByteOrder.BIG_ENDIAN) || byteOrder.equals(ByteOrder.LITTLE_ENDIAN)) {
        unicodeWithoutBOM = new byte[unicode.length - 2];
        System.arraycopy(unicode, 2, unicodeWithoutBOM, 0, unicode.length - 2);
    }
} catch (RuntimeException re) {
    unicodeWithoutBOM = unicode;
}
byte[] resultBytes = new byte[unicodeWithoutBOM.length];
// Меняем Endianess
if (unicodeWithoutBOM[0] != 0x00) {
    resultBytes = endiannessUtils.changeEndianness(unicodeWithoutBOM);
} else {
    System.arraycopy(unicodeWithoutBOM, 0, resultBytes, 0, unicodeWithoutBOM.length);
}
//Добавление имени шаблона в запрос
ext[1] = new Extension(PKCSObjectIdentifiers.MS_ENROLL_CERTTYPE_EXTENSION, true, new BERConstructedOctetString(new DERBMPString(resultBytes).getEncoded()));
Extensions extension = new Extensions(ext);
// Упаковка расширений
Attribute attribute = new Attribute(PKCSObjectIdentifiers.pkcs_9_at_extensionRequest, new DERSet(extension));
DERSet attrinutes = new DERSet(attribute);

Далее переменную attrinutes необходимо передать в конструктор класса PKCS10CertificationRequest, например:
PKCS10CertificationRequest req = new PKCS10CertificationRequest("ECGOST34310", new X509Name(name), pubKey, attrinutes, privKey);
